#pragma once

// #include <iostream>
// #include <cstdio>
// #include <pthread.h>


// typedef void*(*fun_t)(void*);//函数指针

// class ThreadData
// {
// public:
//     std::string _name;
//     int _sock;
//     std::string _ip;
//     uint16_t _port;

//     ThreadData(int num,int sock,std::string ip,uint16_t port)
//     :_sock(sock),_ip(ip),_port(port)
//     {
//         char nameBuffer[64];
//         snprintf(nameBuffer,sizeof(nameBuffer),"Thread-%d",num);
//         _name = nameBuffer;
//     }
// };

// //对线程进行封装
// class Thread
// {
// private:
//     //std::string _name; //线程名字
//     fun_t _func;       //线程例程
//     ThreadData* _tdata; //线程例程的参数
//     pthread_t _tid;    //线程id

// public:
//     Thread(fun_t callback,void* args):_func(callback)
//     {
//         _tdata = (ThreadData*)args;
//     }

//     //创建线程
//     void start()
//     {
//         pthread_create(&_tid,nullptr,_func,(void*)_tdata);
//     }

//     //等待线程
//     void join()
//     {
//         pthread_join(_tid,nullptr);
//     }
    

//     ~Thread()
//     {

//     }
// };